package name.jautzy.esi.client.service;

import name.jautzy.esi.client.model.EsiComment;
import name.jautzy.esi.client.model.EsiUser;
import name.jautzy.esi.client.model.LoginInfo;

import com.extjs.gxt.ui.client.data.ListLoadResult;
import com.google.gwt.user.client.rpc.AsyncCallback;

public interface LoginServiceAsync {

	void login(String requestUri, AsyncCallback<LoginInfo> callback);

	void getCurrentUser(AsyncCallback<EsiUser> callback);

	void updateUser(EsiUser user, AsyncCallback<Void> callback);

	void addComment(String fitId, String comment, AsyncCallback<EsiComment> callback);

	void getComments(String fitId,
			AsyncCallback<ListLoadResult<EsiComment>> callback);

}
